package demo;

import java.awt.*;
import java.text.NumberFormat;

public class AnimationFrame extends ApplicationFrame {
	private Label mStatusLabel;
	private NumberFormat mFormat;

	public AnimationFrame(AnimationComponent ac) {
		super("AnimationFrame v1.0");
		setLayout(new BorderLayout());
		
		add(ac, BorderLayout.CENTER);
		add(mStatusLabel = new Label(), BorderLayout.SOUTH);
		// Create a number formatter.
		mFormat = NumberFormat.getInstance();
		mFormat.setMaximumFractionDigits(1);
		// Listen for the frame rate changes.
		ac.setRateListener(this);
		// Kick off the animation.
		Thread t = new Thread(ac);
		t.start();
	}

	public void rateChanged(double frameRate) {
		mStatusLabel.setText(mFormat.format(frameRate) + " fps");
	}
}